RFC 3986
URI
Updated By RFC 7320, RFC 8820
統一リソース識別子(Uniform Resource Identifier URI):汎用構文
本メモのステータス
本文書は、インターネットコミュニティ向けのインターネット標準化過程におけるプロトコルを規定するものであり、議論と改善提案を求めています。本プロトコルの標準化状況については、「インターネット公式プロトコル標準」(STD 1)の最新版を参照してください。本メモの配布は無制限です。
概要
URI(Uniform Resource Identifier)は、抽象リソースまたは物理リソースを識別する簡潔な文字列です。本仕様では、汎用URI構文と、相対形式のURI参照を解決するためのプロセス、およびインターネット上でのURI使用に関するガイドラインとセキュリティ上の考慮事項を定義します。URI構文は、すべての有効なURIのスーパーセットとなる文法を定義しており、実装は、考えられるすべての識別子のスキーム固有の要件を知らなくても、URI参照の共通コンポーネントを解析できます。本仕様では、URIの生成文法は定義していません。そのタスクは、各URIスキームの個別の仕様によって実行されます。
1. はじめに
URI(Uniform Resource Identifier)は、リソースを識別するためのシンプルで拡張性の高い手段を提供します。このURI構文と意味論の仕様は、World Wide Web(W3)グローバル情報イニシアチブによって導入された概念に基づいています。W3は1990年からこれらの識別子を使用しており、その詳細は「WWWにおけるUniversal Resource Identifiers」RFC 1630に記載されています。この構文は、「インターネットリソースロケータの機能的推奨事項」RFC 1736および「Uniform Resource Namesの機能的要件」RFC 1737に示された推奨事項を満たすように設計されています。
この文書は、すべてのURIに対して単一の汎用構文を定義するために「Uniform Resource Locators」RFC 1738と「Relative Uniform Resource Locators」RFC 1808を統合したRFC 2396を廃止します。
また、IPv6アドレスの構文を導入したRFC 2732も廃止します。
本仕様では、個々のURIスキームの具体的な構文を定義したRFC 1738の部分は除外します。これらの部分は別の文書として更新されます。新しいURIスキームの登録プロセスはBCP35で別途定義されています。新しいURIスキームの設計者向けのアドバイスはRFC 2718に記載されています。RFC 2396からの重要な変更点はすべて付録Dに記載されています。
本仕様では、「文字」および「符号化文字セット」という用語はBCP19の定義に従い、「文字エンコーディング」という用語はBCP19で「文字セット」と呼ばれているものの代わりに使用します。